/*
 * To change this template, choose Tools | Templates and open the template in
 * the editor.
 */
package view;

import Model.Aluno;
import Model.AlunoDAO;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Node;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.text.Font;
import org.hibernate.bytecode.buildtime.ExecutionException;

/**
 *
 * @author GIOVANI
 */
public class TelaAlunoFormulario extends HBox {
    
    private AlunoDAO dao = new AlunoDAO();

    public TelaAlunoFormulario() {
    VBox form = new VBox();
        HBox botoes = new HBox();
        VBox left = new VBox();
        
            //botoes
            Button bt_salvar = new Button("Salvar");
            Button bt_limpar = new Button("Limpar");

            final Label msg = new Label();
            msg.setFont(new Font("Arial", 20));
            
           
            
            //texts fields
            final TextField tb_nome = new BaseTextField();
            final TextField tb_idade = new BaseTextField();
            final TextField tb_sexo = new BaseTextField();
            final TextField tb_cpf = new BaseTextField();
            final TextField tb_cep = new BaseTextField();
            
            final TextField tb_bairro = new BaseTextField();
         

            //labels
           Label lb_nome = new Label("Nome:");
           Label lb_idade = new Label("Idade:");
           Label lb_sexo = new Label("sexo:");
           Label lb_cpf = new Label("cpf:");
           Label lb_cep = new Label("cep:");
           Label lb_bairro = new Label("bairro:");
      
          //INICIO BOTOES
           bt_salvar.setOnAction(new EventHandler<ActionEvent>() {

                @Override
                public void handle(ActionEvent t) throws ExecutionException {
                    try {
                        Aluno aluno = new Aluno();
                        aluno.setNome(tb_nome.getText());
                        aluno.setIdade(Integer.parseInt(tb_idade.getText()));
                        aluno.setSexo(tb_sexo.getText().charAt(0));
                        aluno.setCpf(tb_cpf.getText());
                        aluno.setCep(tb_cep.getText());
                        aluno.setBairro(tb_bairro.getText());
                        dao.create(aluno);
                            msg.setText("Aluno Cadastrado com Sucesso");
                    throw new ExecutionException("Erro");
                    }
                   catch( ExecutionException e ){
                           msg.setText("Aluno Cadastrado com Sucesso");
                           
                   }
            }
            });
           
           bt_limpar.setOnAction(new EventHandler<ActionEvent>() {

                @Override
                public void handle(ActionEvent t) {
                    tb_nome.clear();
                    tb_sexo.clear();
                    tb_bairro.clear();
                    tb_cep.clear();
                    tb_cpf.clear();
                    tb_idade.clear();                
            }
            });
         //FIM EVENTOS BOTOES
 
           botoes.getChildren().addAll(bt_salvar, bt_limpar);
            botoes.setSpacing(10);
           form.getChildren().addAll(lb_nome, tb_nome, lb_idade, tb_idade, lb_sexo, tb_sexo, lb_cpf, tb_cpf, lb_cep, tb_cep, lb_bairro, tb_bairro, botoes );
           form.setTranslateX(200);
           form.setTranslateY(10);
           form.setSpacing(15);
       Label cadastro = new Label("Cadastro de Alunos");
       cadastro.setFont( new Font("Arial", 20));
       //INSERE LOGO
       
       //String url = "src/images/cadastraEscola.png";
       ImageView logo = new ImageView( new Image(getClass().getResourceAsStream("../images/cadastraEscola.png"), 170, 120, false, true));
       
       //FIM INSERE LOGO
       
       
       left.getChildren().addAll(cadastro, logo, msg); //add logo
       this.getChildren().addAll(left, form);
       this.setTranslateX(10);
       this.setTranslateY(10);
       this.setSpacing(15);
       //return layout;        
    }

    TelaAlunoFormulario(Aluno aluno) {
        throw new UnsupportedOperationException("Not yet implemented");
    }
    
    
    
}
